home *** CD-ROM | disk | FTP | other *** search
/ NetNews Offline 2 / NetNews Offline Volume 2.iso / news / comp / lang / c++-part1 / 4521 < prev    next >
Encoding:
Internet Message Format  |  1996-08-06  |  4.9 KB

  1. Path: howland.reston.ans.net!agate!usenet
  2. From: marcoxa@lox.icsi.berkeley.edu (Marco Antoniotti)
  3. Newsgroups: comp.lang.lisp,comp.lang.c++
  4. Subject: Re: Why garbage collection?
  5. Date: 30 Jan 1996 11:38:42 -0800
  6. Organization: International Computer Science Institute
  7. Sender: marcoxa@lox.ICSI.Berkeley.EDU
  8. Message-ID: <s08spgxh3r1.fsf@lox.ICSI.Berkeley.EDU>
  9. References: <4ecmfo$as9@news2.ios.com> <4ei4og$la1@info.epfl.ch>
  10.     <s08wx6akhlt.fsf@lox.ICSI.Berkeley.EDU> <DLywCI.LDG@research.att.com>
  11. NNTP-Posting-Host: lox.icsi.berkeley.edu
  12. In-reply-to: bs@research.att.com's message of Tue, 30 Jan 1996 00:07:29 GMT
  13. X-Newsreader: Gnus v5.1
  14.  
  15. In article <DLywCI.LDG@research.att.com> bs@research.att.com (Bjarne Stroustrup <9758-26353> 0112760) writes:
  16.  
  17.    From: bs@research.att.com (Bjarne Stroustrup <9758-26353> 0112760)
  18.    Newsgroups: comp.lang.lisp,comp.lang.c++
  19.    Date: Tue, 30 Jan 1996 00:07:29 GMT
  20.    Organization: Info. Sci. Div., AT&T Bell Laboratories, Murray Hill, NJ
  21.    Lines: 66
  22.    Xref: agate comp.lang.lisp:20712 comp.lang.c++:172072
  23.  
  24.    marcoxa@lox.icsi.berkeley.edu (Marco Antoniotti) write.
  25.  
  26.     > [discussion about C++ by someone else]
  27.     > 
  28.     > This is probably off-track, but, as a diversion, please bear this last
  29.     > gripe of mine on the language which is going to be swapped away by
  30.     > Java (no, it is not Lisp :) ).
  31.  
  32.    You are indeed way off track, and I think the announcements of C++'s
  33.    imminent demise are rather premature.
  34.  
  35. Well, I think so too.
  36.  
  37.     > One of the things that bothered me most with C++, was this sort of
  38.     > "newspeak" which it introduced.  For years people had been working in
  39.     > Flavors, Clos, Smalltalk etc, and they pretty much shared a common
  40.     > terminology.  Then suddendly, we did not have "methods" any more, we
  41.     > had "member functions", we lost the "inheritance" (pun intended) and
  42.     > started "deriving classes".
  43.  
  44.    I think you have your dates wrong. The C++ terminology was picked in
  45.    1979. Then, the work on CLOS hadn't yet started, Smalltalk-80 hadn't
  46.    been completed, and its predecessor was not well known outside a small
  47.    circle of researchers. I don't recall the dates for Flavors and Loops,
  48.    but again these languages were not known outside the AI community for
  49.    quite a few years.
  50.  
  51.    The C++ terminology is based on that of Simula (1967) and partly on that
  52.    of C (1972). The base- and derived class terminology was indeed invented
  53.    for C++ - based on rather negative experience teaching using the Simula
  54.    super- and subclass terminology.
  55.  
  56.    A good source for dates and other historical facts about these languages is:
  57.  
  58.        Preprint of Proc. ACM History of Programming Languages
  59.        Conference (HOPL-2).
  60.        April 1993.
  61.        ACM SIGPLAN Notices, March 1993.
  62.  
  63.    The C++ paper there is
  64.  
  65.        Stroustrup: The History of C++: 1979-1991.
  66.  
  67.    A more thorough description of the design of C++ is:
  68.  
  69.        Stroustrup: The Design and Evolution of C++.
  70.        Addison-Wesley. ISBN 0-201-54330-3.
  71.  
  72.     > Of course, the argument is that C++ wanted to "clarify" such things
  73.     > and the choice of new terminology was a "good thing".
  74.  
  75.    You got the motivation wrong as well. There wasn't an accepted terminology
  76.    to "clarify." I stuck to the most widely used terminology at the time
  77.    (Simula's) as far as I could, and introduced new terms that fitted that
  78.    and the terminology of C only where I saw no alternative.
  79.  
  80.     > Well, I must say that I am very pleased to see that Java somewhat
  81.     > reintroduced the "old" terminology and that Lisp, (as well as Dylan)
  82.     > is not yet dead.
  83.     > 
  84.     > Half seriously yours
  85.  
  86.    It is a good idea to be at least half accurate even if only half serious.
  87.  
  88. Of course (this time seriously), I cannot contest Bjarne's account of
  89. the history of C++ and the motivations that lead him to the choices
  90. he made.  To my partial justification I can only say that the earliest
  91. document of Bjarne's on C++ that was widely available dates to 1983
  92. ("Adding Classes to C..." SW Practice and Experience" 13), and that I
  93. doubt that many people actually saw the AT&T C++ preprocessor until
  94. 87/88 (I might, of course, be wrong on this.)  Of course not many
  95. people had a Xerox or a Symbolics to play around either.
  96.  
  97. What I find very interesting in Bjarne's post is the reference to
  98. Simula.  I never programmed in it and have only memories of the
  99. chapters on Ghezzi's book (1st edition).  It would seem that my
  100. accusation of inventing a "newspeak" must then fall on the
  101. Smalltalk/Loops/Flavors people. :)
  102.  
  103. Cheers
  104. -- 
  105. Marco Antoniotti - Resistente Umano
  106. ===============================================================================
  107. International Computer Science Institute    | marcoxa@icsi.berkeley.edu
  108. 1947 Center STR, Suite 600            | tel. +1 (510) 643 9153
  109. Berkeley, CA, 94704-1198, USA            |      +1 (510) 642 4274 x149
  110. ===============================================================================
  111.     ...it is simplicity that is difficult to make.
  112.     ...e` la semplicita` che e` difficile a farsi.
  113.                 Bertholdt Brecht
  114.